// Decompiled by GOOSIN CO,LTD Copyright 2010 Pavel Kouznetsov.
// home page: http://www.Goosin.net
// Decompiler options: packimports(3) fieldsfirst ansi space 
// Source File Name:   dealwith_ok.java

package qcs.accident;

import com.jspsmart.upload.*;
import include.nseer_cookie.*;
import include.nseer_db.nseer_db_backup1;
import java.io.File;
import java.io.IOException;
import java.sql.ResultSet;
import javax.servlet.ServletContext;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import javax.servlet.jsp.JspFactory;

public class dealwith_ok extends HttpServlet
{

	public dealwith_ok()
	{
	}

	public synchronized void service(HttpServletRequest request, HttpServletResponse response)
		throws IOException, ServletException
	{
		HttpSession dbSession = request.getSession();
		JspFactory _jspxFactory = JspFactory.getDefaultFactory();
		javax.servlet.jsp.PageContext pageContext = _jspxFactory.getPageContext(this, request, response, "", true, 8192, true);
		ServletContext dbApplication = dbSession.getServletContext();
		try
		{
			HttpSession session = request.getSession();
			ServletContext context = session.getServletContext();
			String path = context.getRealPath("/");
			counter count = new counter(dbApplication);
			SmartUpload mySmartUpload = new SmartUpload();
			mySmartUpload.setCharset("UTF-8");
			nseer_db_backup1 qcs_db = new nseer_db_backup1(dbApplication);
			if (qcs_db.conn((String)dbSession.getAttribute("unit_db_name")))
			{
				mySmartUpload.initialize(pageContext);
				String file_type = getFileLength.getFileType((String)session.getAttribute("unit_db_name"));
				long d = getFileLength.getFileLength((String)session.getAttribute("unit_db_name"));
				mySmartUpload.setMaxFileSize(d);
				mySmartUpload.setAllowedFilesList(file_type);
				mySmartUpload.upload();
				String file_name[] = new String[mySmartUpload.getFiles().getCount()];
				String not_change[] = new String[mySmartUpload.getFiles().getCount()];
				String accident_id = mySmartUpload.getRequest().getParameter("accident_id");
				String sqla = (new StringBuilder("select check_tag,dealwith_tag,attachment1 from qcs_accident where accident_id='")).append(accident_id).append("'").toString();
				ResultSet rs = qcs_db.executeQuery(sqla);
				if (!rs.next())
					response.sendRedirect("qcs/accident/dealwith_ok.jsp?finished_tag=0");
				else
				if (rs.getString("check_tag").equals("0"))
					response.sendRedirect("qcs/accident/dealwith_ok.jsp?finished_tag=2");
				else
				if (rs.getString("dealwith_tag").equals("1"))
				{
					response.sendRedirect("qcs/accident/dealwith_ok.jsp?finished_tag=3");
				} else
				{
					String attachment[] = mySmartUpload.getRequest().getParameterValues("attachment");
					String delete_file_name[] = new String[0];
					if (attachment != null)
					{
						delete_file_name = new String[attachment.length];
						for (int i = 0; i < attachment.length; i++)
							delete_file_name[i] = rs.getString(attachment[i]);

					}
					for (int i = 0; i < mySmartUpload.getFiles().getCount(); i++)
					{
						SmartFile file = mySmartUpload.getFiles().getFile(i);
						if (file.isMissing())
						{
							file_name[i] = "";
							int q = i + 1;
							String field_name = (new StringBuilder("attachment")).append(q).toString();
							if (!rs.getString(field_name).equals(""))
								not_change[i] = "yes";
						} else
						{
							int filenum = count.read((String)dbSession.getAttribute("unit_db_name"), "qcsAttachmentcount");
							count.write((String)dbSession.getAttribute("unit_db_name"), "qcsAttachmentcount", filenum);
							file_name[i] = (new StringBuilder(String.valueOf(filenum))).append(file.getFileName()).toString();
							file.saveAs((new StringBuilder(String.valueOf(path))).append("qcs/file_attachments/").append(filenum).append(file.getFileName()).toString());
						}
					}

					String accident_time = mySmartUpload.getRequest().getParameter("accident_time");
					String accident_name = mySmartUpload.getRequest().getParameter("accident_name");
					String product_id = mySmartUpload.getRequest().getParameter("product_id");
					String product_name = mySmartUpload.getRequest().getParameter("product_name");
					String bodya = new String(mySmartUpload.getRequest().getParameter("accident_outlines").getBytes("UTF-8"), "UTF-8");
					String accident_outlines = exchange.toHtml(bodya);
					String body1 = new String(mySmartUpload.getRequest().getParameter("explanation").getBytes("UTF-8"), "UTF-8");
					String explanation = exchange.toHtml(body1);
					String body2 = new String(mySmartUpload.getRequest().getParameter("survey_result").getBytes("UTF-8"), "UTF-8");
					String survey_result = exchange.toHtml(body2);
					String body4 = new String(mySmartUpload.getRequest().getParameter("measure").getBytes("UTF-8"), "UTF-8");
					String measure = exchange.toHtml(body4);
					String body5 = new String(mySmartUpload.getRequest().getParameter("suggestion").getBytes("UTF-8"), "UTF-8");
					String suggestion = exchange.toHtml(body5);
					String handler = mySmartUpload.getRequest().getParameter("handler");
					String handler_id = mySmartUpload.getRequest().getParameter("handler_id");
					String dealwith_time = mySmartUpload.getRequest().getParameter("dealwith_time");
					sqla = (new StringBuilder("update qcs_accident set accident_time='")).append(accident_time).append("',accident_name='").append(accident_name).append("',product_id='").append(product_id).append("',product_name='").append(product_name).append("',accident_outlines='").append(accident_outlines).append("',explanation='").append(explanation).append("',survey_result='").append(survey_result).append("',handler_id='").append(handler_id).append("',handler='").append(handler).append("',dealwith_time='").append(dealwith_time).append("',measure='").append(measure).append("',suggestion='").append(suggestion).append("',dealwith_tag='1'").toString();
					String sqlb = (new StringBuilder(" where accident_id='")).append(accident_id).append("'").toString();
					if (attachment != null)
					{
						for (int i = 0; i < attachment.length; i++)
						{
							sqla = (new StringBuilder(String.valueOf(sqla))).append(",").append(attachment[i]).append("=''").toString();
							File file = new File((new StringBuilder(String.valueOf(path))).append("qcs/file_attachments/").append(delete_file_name[i]).toString());
							file.delete();
						}

					}
					for (int i = 0; i < mySmartUpload.getFiles().getCount(); i++)
						if (not_change[i] == null || !not_change[i].equals("yes"))
						{
							int p = i + 1;
							sqla = (new StringBuilder(String.valueOf(sqla))).append(",attachment").append(p).append("='").append(file_name[i]).append("'").toString();
						}

					String sql = (new StringBuilder(String.valueOf(sqla))).append(sqlb).toString();
					qcs_db.executeUpdate(sql);
					response.sendRedirect("qcs/accident/dealwith_ok.jsp?finished_tag=1");
				}
				qcs_db.commit();
				qcs_db.close();
			} else
			{
				response.sendRedirect("error_conn.htm");
			}
		}
		catch (Exception ex)
		{
			ex.printStackTrace();
		}
	}
}
